package com.ruoyi.jl_base.domain.vo;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.ruoyi.common.annotation.ExcelDictFormat;
import com.ruoyi.common.convert.ExcelDictConvert;
import lombok.Data;
import java.util.Date;



/**
 * 合同主视图对象 jl_base_bs_contract
 *
 * @author zyb
 * @date 2024-12-23
 */
@Data
@ExcelIgnoreUnannotated
public class JlBaseBsContractVo {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @ExcelProperty(value = "主键")
    private Long contractId;

    /**
     * 所属试验室id
     */
    @ExcelProperty(value = "所属试验室id")
    private Long deptId;

    /**
     * 所属项目id
     */
    @ExcelProperty(value = "所属项目id")
    private Long projectId;

    /**
     * 所属标段id
     */
    @ExcelProperty(value = "所属标段id")
    private Long bdId;

    /**
     * 合同号
     */
    @ExcelProperty(value = "合同号")
    private String contractNo;

    /**
     * 施工单位id
     */
    @ExcelProperty(value = "施工单位id")
    private Long sgdwId;

    /**
     * 监理单位id
     */
    @ExcelProperty(value = "监理单位id")
    private Long jldwId;

    /**
     * 建设单位id
     */
    @ExcelProperty(value = "建设单位id")
    private Long jsdwId;

    /**
     * 是否允许修改flag
     */
    @ExcelProperty(value = "是否允许修改flag")
    private Integer updateFlag;

    /**
     * 审核状态
     */
    @ExcelProperty(value = "审核状态")
    private String approveFlag;

    /**
     * 是否允许负计量
     */
    @ExcelProperty(value = "是否允许负计量")
    private Integer fjlFlag;

    /**
     * 开工日期
     */
    @ExcelProperty(value = "开工日期")
    private Date beginDate;

    /**
     * 竣工日期
     */
    @ExcelProperty(value = "竣工日期")
    private Date endDate;

    /**
     * 合同总价金额
     */
    @ExcelProperty(value = "合同总价金额")
    private BigDecimal contractMoney;

    /**
     * 合同清单总价金额
     */
    @ExcelProperty(value = "合同清单总价金额")
    private BigDecimal contractSheetTotalMoney;

    /**
     * 开工预付款金额
     */
    @ExcelProperty(value = "开工预付款金额")
    private BigDecimal kgyfkMoney;

    /**
     * 材料预付款金额
     */
    @ExcelProperty(value = "材料预付款金额")
    private BigDecimal clyfkMoney;

    /**
     * 暂列金金额
     */
    @ExcelProperty(value = "暂列金金额")
    private BigDecimal zljMoney;

    /**
     * 质保金金额
     */
    @ExcelProperty(value = "质保金金额")
    private BigDecimal zbjMoney;

    /**
     * 计日工金额
     */
    @ExcelProperty(value = "计日工金额")
    private BigDecimal jrgMoney;

    /**
     * 起讫桩号
     */
    @ExcelProperty(value = "起讫桩号")
    private String qqzh;

    /**
     * 标段长度(KM)
     */
    @ExcelProperty(value = "标段长度(KM)")
    private BigDecimal bdLen;

    /**
     * 开工预付款起扣比例(%)
     */
    @ExcelProperty(value = "开工预付款起扣比例(%)")
    private Long kgyfkQkbl;

    /**
     * 开工预付款截止比例(%)
     */
    @ExcelProperty(value = "开工预付款截止比例(%)")
    private Long kgyfkJzbl;

    /**
     * 质保金扣款比例(%)
     */
    @ExcelProperty(value = "质保金扣款比例(%)")
    private Long zbjKkbl;

    /**
     * 农民工工资保证金扣款比例(%)
     */
    @ExcelProperty(value = "农民工工资保证金扣款比例(%)")
    private Long nmggzbzjKkbl;

    /**
     * 开工预付款支付情况
     */
    @ExcelProperty(value = "开工预付款支付情况")
    private String kgyfkZfqk;

    /**
     * 开工预付款扣回规定
     */
    @ExcelProperty(value = "开工预付款扣回规定")
    private String kgyfkKhgd;

    /**
     * 材料预付款支付情况
     */
    @ExcelProperty(value = "材料预付款支付情况")
    private String clyfkZfqk;

    /**
     * 材料预付款扣回规定
     */
    @ExcelProperty(value = "材料预付款扣回规定")
    private String clyfkKhgd;

    /**
     * 合同已经计量金额(实时计算)
     */
    private BigDecimal contractHavaJlMoney;
    /**
     * 合同已结算金额(实时计算)
     */
    private BigDecimal contractHavaSettleMoney;
    /**
     * 合同已支付金额(实时计算)
     */
    private BigDecimal contractHavaPayMoney;


}
